<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>grid</title>
  </head>
  <body>
    <div class="layout">
      <header>头部</header>
      <aside>侧边栏</aside>
      <main>内容</main>
      <footer>底部</footer>
    </div>
  </body>
  <style>
    .layout {
      width: 80vw;
      height: 80vh;
      margin: 40px auto;
      display: grid;
      grid-template-areas:
        "a a a"
        "b c c"
        "d d d";
      row-gap: 10px;
      column-gap: 20px;
    }
    header {
      grid-area: a;
      background: blue;
    }
    aside {
      grid-area: b;
      background: green;
    }
    main {
      grid-area: c;
      background: indianred;
    }
    footer {
      grid-area: d;
      background: pink;
    }
  </style>
</html>
